#ifndef BARBEARIA_H_
#define BARBEARIA_H_

#include <pthread.h>

#include "Cliente.h"
#include "Barbeiro.h"

#include <queue>

class Barbearia
{
	private:
	
		Barbeiro 
		mBarbeiro1,
		mBarbeiro2,
		mBarbeiro3;
		
		pthread_t
		mThreadCorta1,
		mThreadCorta2,
		mThreadCorta3;
	
		std::queue < Barbeiro* >
		mFilaBarbeirosDormindo;		
		
	public:
	
		Barbearia();
	
		virtual 
		~Barbearia();
		
		bool
		isFilaClientesLivre;
		
		std::queue < Cliente >
		mFilaClientes;
		
		std::queue < Cliente >
		mFilaClientesCortados;			
		
		void
		entradaDeCliente( Cliente );		
		
};

#endif /*BARBEARIA_H_*/
